//! # RustCloud 核心认证工具
//!
//! 本模块提供了统一的认证相关工具，避免在各个模块中重复实现相同的功能。
//! 主要包括：
//!
//! * **基础类型** - Principal、Resource、PrincipalType 等基础认证类型
//! * **Principal 构建器** - 统一的 Principal 创建和转换工具
//! * **权限检查器** - 通用的权限检查实现
//! * **授权提供者** - 标准的授权服务实现
//!
//! # 使用场景
//!
//! 这些工具类设计用于替代各个认证提供者中重复的实现：
//!
//! * JWT 认证提供者中的 Principal 创建逻辑
//! * API Key 认证提供者中的 Principal 转换逻辑
//! * 各个模块中重复的权限检查实现
//! * 授权逻辑的标准化实现
//!
//! # 模块组织
//!
//! * `types` - 基础认证类型定义
//! * `principal_builder` - Principal 构建器和转换工具
//! * `permission_checker` - 权限检查器和授权提供者

pub mod types;
pub mod principal_builder;
pub mod permission_checker;

// 重新导出主要的公共接口
pub use types::*;
pub use principal_builder::{PrincipalBuilder, PrincipalConverter};
pub use permission_checker::{
    CommonPermissionChecker, PermissionCheckConfig, PermissionCheckerFactory,
};